State Coverage: Software Validation Metrics beyond Code Coverage

نویسندگان

  • Dries Vanoverberghe
  • Jonathan de Halleux
  • Nikolai Tillmann
  • Frank Piessens
چکیده

Currently, testing is still the most important approach to reduce the amount of software defects. Software quality metrics help to prioritize where additional testing is necessary by measuring the quality of the code. Most approaches to estimate whether some unit of code is sufficiently tested are based on code coverage, which measures what code fragments are exercised by the test suite. Unfortunately, code coverage does not measure to what extent the test suite checks the intended functionality. We propose state coverage, a metric that measures the ratio of state updates that are read by assertions with respect to the total number of state updates, and we present efficient algorithms to measure state coverage. Like code coverage, state coverage is simple to understand and we show that it is effective to measure and easy to aggregate. During a preliminary evaluation on several open-source libraries, state coverage helped to identify multiple unchecked properties and detect several bugs.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

State Coverage: Software validation metrics beyond Code Coverage - Extended Version

Currently, testing is still the most important approach to reduce the amount of software defects. Software quality metrics help to prioritize where additional testing is necessary by measuring the quality of the code. Most approaches to estimate whether some unit of code is sufficiently tested are based on code coverage, which measures what code fragments are exercised by the test suite. Unfort...

متن کامل

Testing Strategies for Model-Based Development

Model-based software development offers new opportunities and challenges for validation and verification of safety-critical software. Since models have well-defined syntax and semantics, it is possible to test models as well as source code and to define structural coverage metrics over models. Further, given a formal description of requirements, it is possible to use automated tools to check wh...

متن کامل

Beyond code coverage - An approach for test suite assessment and improvement

Code coverage is successfully used to guide white box test design and evaluate the respective test completeness. However, simple overall coverage ratios are often not precise enough to effectively help when a (regression) test suite needs to be reassessed and evolved after software change. We present an approach for test suite assessment and improvement that utilizes code coverage information, ...

متن کامل

Evaluation of Coverage-Driven Random Verification

The project focuses on examining the advantages of random verification with real examples. Random verification has two necessary parts, hierarchical testbench and coverage metrics. The layered testbench allows a verifier to improve the coverage by only modifying the randomization constraints at the highest level of abstraction. Although it might take a verifier more time to build such hierarchi...

متن کامل

A Probabilistic Analysis For Fault Detectability of Code Coverage Metrics

Increasing design complexity, shrinking time to market, and high cost of fixing a bug in a released product [11] make functional validation of microprocessors a key ingredient in the product development cycle. Simulation is widely used to validate large systems like microprocessors. In simulation based validation, a test is executed in a golden reference model as well as in the design under tes...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012